Communication apparatus, control program of communication apparatus, and relay apparatus providing efficient download of electronic data

ABSTRACT

A communication apparatus, a control program of the communication apparatus, and a relay apparatus are provided. The communication apparatus is configured to download electronic data from a server storing a first amount or more of electronic data and to output the downloaded electronic data. The communication apparatus includes an output unit configured to output a second amount of electronic data smaller than the first amount at one time, a download information acquiring unit configured to acquire download information necessary for downloading the first amount of electronic data stored in the server, from the server, a download unit configured to download the second amount of electronic data of the first amount of electronic data from the server, using the download information acquired by the download information acquiring unit. The output unit is configured to output the electronic data downloaded by the download unit.

CROSS-REFERENCE TO RELATED APPLICATION

This application claims priority from Japanese Patent Application No. 2010-250314, filed on Nov. 8, 2010, the entire subject matter of which is incorporated herein by reference.

TECHNICAL FIELD

Aspects of the present invention relate to a communication apparatus, a control program of the communication apparatus, and a relay apparatus.

BACKGROUND

There have been known an image reading apparatus for uploading electronic data of read images to a server, a print apparatus for printing electronic data downloaded from a server, and the like. JP-A-2005-269250 describes an example of the image reading apparatus for uploading electronic data of read images to a server. In a case of a manufacturer of such an image reading apparatus and a print apparatus providing those services, it is necessary for the manufacturer itself to provide a dedicated server for storing uploaded electronic data.

Meanwhile, recently, electronic-data storing services capable of storing electronic data in databases provided on networks by service providers become popular. For example, a Picasa (a registered trademark) web album and flickr (a registered trademark) are examples of the electronic-data storing services. Users can use a terminal device having a web browser to upload or download desired electronic data in the electronic-data storing services. Many electronic-data storing service providers release their own application program interfaces (API). Other business operators can use the APIs to provide new services cooperating with the electronic-data storing services to users.

SUMMARY

Assuming that a manufacture of a communication apparatus outputs electronic data stored in an electronic-data storing service, as part of new service cooperating with the electronic-data storing service, an amount of electronic data which a communication apparatus can output at one time is finite. For this reason, the communication apparatus receives download information for downloading a certain amount of electronic data, which can be output at one time, in the electronic-data storing service, using the APIs provided in the electronic-data storing services, downloads electronic data using the received download information, and outputs the downloaded electronic data. However, in this procedure, whenever electronic data is output, a process of receiving download information using the APIs is required, and thus a load is imposed on the communication apparatus, the electronic-data storing service, and a communication path between the communication apparatus and the electronic-data storing service.

Accordingly, an aspect of the present invention provides a communication apparatus, a control program of the communication apparatus, and a relay apparatus, capable of implementing a new service cooperating with an electronic-data storing service.

According to an illustrative embodiment of the present invention, there is provided a communication apparatus configured to download electronic data from a server storing a first amount or more of electronic data and to output the downloaded electronic data. The communication apparatus comprises: an output unit configured to output a second amount of electronic data smaller than the first amount at one time; a download information acquiring unit configured to acquire download information necessary for downloading the first amount of electronic data stored in the server, from the server; and a download unit configured to download the second amount of electronic data of the first amount of electronic data from the server, using the download information acquired by the download information acquiring unit, wherein the output unit is configured to output the electronic data downloaded by the download unit.

According to another illustrative embodiment of the present invention, there is provided a non-transitory computer-readable medium having a computer program stored thereon and readable by a computer of a communication apparatus including an output unit configured to output a second amount of electronic data smaller than a first amount of electronic data at one time, the computer program, when executed by the computer, causing the computer to perform operations comprising: acquiring download information necessary for downloading the first amount of electronic data stored in the server, from the server; downloading the second amount of electronic data of the first amount of electronic data from the server, using the acquired download information; and causing the output unit to output the downloaded electronic data.

According to a further illustrative embodiment of the present invention, there is provided a relay apparatus configured to relay communication between a server storing a first amount or more of electronic data and a communication apparatus, the communication apparatus including: a download information acquiring unit configured to acquire download information necessary for downloading the first amount of electronic data from the server; a download unit configured to download a second amount of electronic data of the first amount of electronic data from the server, using the download information acquired by the download information acquiring unit, and an output unit configured to output the second amount of data at one time, wherein the second amount of electronic data is smaller than the first amount of electronic data. The relay apparatus comprises a download information transmission unit configured, when the download information is requested by the download information acquiring unit of the communication apparatus, to request transmission of the download information from the server, to receive the download information which the server transmits, and to transmit the download information acquired from the server, to the communication apparatus.

BRIEF DESCRIPTION OF THE DRAWINGS

The above and other aspects of the present invention will become more apparent and more readily appreciated from the following description of illustrative embodiments of the present invention taken in conjunction with the attached drawings, in which:

FIG. 1 is a schematic diagram illustrating a service cooperation system according to an illustrative embodiment;

FIG. 2 is a block diagram illustrating a hardware configuration of the service cooperation system;

FIG. 3 (FIGS. 3A and 3B) is a first sequence diagram view illustrating an example of the operation of the service cooperation system;

FIG. 4 (FIGS. 4A and 4B) is a second sequence diagram view illustrating the example of the operation of the service cooperation system;

FIG. 5 (FIGS. 5A and 5B) is a third sequence diagram view illustrating the example of the operation of the service cooperation system;

FIG. 6 is a fourth sequence diagram view illustrating the example of the operation of the service cooperation system;

FIG. 7 (FIGS. 7A and 7B) is a flow chart illustrating an operation of a multi-function device;

FIG. 8 is a flow chart illustrating a screen information generating process of the multi-function device;

FIG. 9 is a flow chart illustrating another operation of the multi-function device;

FIG. 10 is a diagram illustrating a relation between thumbnail URLs and indexes;

FIG. 11 is a diagram illustrating an image displayed on a display unit of the multi-function device; and

FIG. 12 is a flow chart illustrating a modified example of the screen information generating process of the multi-function device.

DETAILED DESCRIPTION

Hereinafter, illustrative embodiments of the present invention will be described with reference to the accompanying drawings. The drawings to be referred to are used for explaining technical features applicable in the present invention. Configurations of devices, apparatuses, and systems, flow charts of various processes, and the like to be described below are mere explanation examples. They are not intended to limit the scope of the present invention.

<Configuration of Service Cooperation System 10>

A configuration of a service cooperation system 10 according to an illustrative embodiment of the present invention will be described with reference to FIG. 1. The service cooperation system 10 includes a multi-function device 100 and a relay apparatus 200. The service cooperation system 10 can upload or download electronic data or download thumbnail images of electronic data in an electronic-data storing service provided by a service provider. Herein, the electronic data may include any format file such as a Word format, a PDF format or the like in addition to image file.

The electronic-data storing service is provided by a service providing apparatus 300 installed on the Internet for each service provider. Specifically, the service providing apparatus 300 is a known web server. The service providing apparatus 300 communicates with other terminals connected to the Internet based on HTTP or HTTPS so as to provide a predetermined service to the terminals.

The multi-function device 100 is specifically a small-sized digital combined machine. The multi-function device 100 has a printing function, a scanner function, a fax function, and copy function.

A user of the multi-function device 100 can upload electronic data of an image, read by the scanner function of the multi-function device 100, in the electronic-data storing service.

Also, the user of the multi-function device 100 can display electronic data and thumbnail images of the electronic data, downloaded from the electronic-data storing service, on a display unit 150 and/or can print electronic data and thumbnail images of the electronic data, downloaded from the electronic-data storing service, by the print function of the multi-function device 100.

The multi-function device 100 uploads or downloads electronic data in cooperation with the relay apparatus 200. The multi-function device 100 acquires URLs from the electronic-data storing service through the relay apparatus 200. The URLs include an upload destination URL which is an URL of an upload destination of electronic data in the electronic-data storing service, an electronic-data URL which is a URL of electronic data to be downloaded from the electronic-data storing service, and the like. However, in order to transmit or receive binary data of a large amount of electronic data, the multi-function device 100 communicates directly with the electronic-data storing service without using the relay apparatus 200. Therefore, according to the service cooperation system 10, it is possible to suppress an amount of data passing through the relay apparatus 200. Also, it is possible to suppress a load on the relay apparatus 200.

The relay apparatus 200 may be a known apparatus having a server function. The relay apparatus 200 may also be a server owned by a manufacturer of the multi-function device 100, and it is also conceivable of using a virtual machine which is represented by Amazon EC2 (a registered trademark) and functions as a server in cooperation with a plurality of physical devices. In this case, the operational cost of the relay apparatus 200 changes according to the amount of data passing through the relay apparatus 200 and the load of processing on the relay apparatus 200. As described above, in the case where a rental server or a virtual machine is used, the operational cost of the relay apparatus 200 can be suppressed by reducing the amount of data passing through the relay apparatus 200 or reducing the load of data processing on the relay apparatus 200. Even in a case where a manufacturer by itself provides the relay apparatus 200, since the relay apparatus 200 does not need high processing performance, the equipment investment for the relay apparatus can be suppressed.

<Hardware Configuration of Service Cooperation System 10>

A hardware configuration of the service cooperation system 10 will be described with reference to FIG. 2. The following description will be made on assumption that the service cooperation system 10 cooperates with two electronic-data storing services, that is, a service A and a service B. In the following description, a service providing apparatus 300 for the service A is referred to as a service providing apparatus 300A. Also, a service providing apparatus 300 for the service B is referred to as a service providing apparatus 300B. If it is not necessary to particularly distinguish both services from each other, the service providing apparatus 300A and the service providing apparatus 300B are generally referred to as the service providing apparatus 300. The service providing server 300 will be described as a physically existing server; however, the service providing server 300 may be a virtual machine. The multi-function device 100, the relay apparatus 200, the service providing apparatus 300A, and the service providing apparatus 300B are connected to one another through a network 400. As the network 400, for example, an Ethernet network can be used. The multi-function device 100, the relay apparatus 200, and the service providing apparatus 300 perform data transmission and reception with one another based on HTTP/1.1.

First, a software configuration of the multi-function device 100 will be described. The multi-function device 100 includes a communication unit 110, a control unit 120, a storage unit 130, a memory card controller 140, a display unit 150, a print unit 160, a scanner unit 170, and an operation unit 180.

The communication unit 110 performs communication with other devices connected to the network. As the communication unit 110, a known network card can be used.

The control unit 120 includes a CPU, and a ROM and RAM connected to the CPU (not shown). The CPU controls the operation of the multi-function device 100 according to programs stored in the ROM. The programs stored in the ROM include a rendering driver for generating a screen based on a text written in a markup language such as XML. The RAM is a storage device for temporarily storing various kinds of data.

The storage unit 130 is a non-volatile storage device such as a NAND-type flash memory. The storage unit 130 stores user identification information for identifying a user of the multi-function device 100, various set information, and the like.

The memory card controller 140 controls the memory of a memory card 141 inserted into the multi-function device 100. Specifically, the memory card controller 140 performs writing of data in the memory card 141, erasing of data stored in the memory card 141, reading of data stored in the memory card 141, or the like, according to an instruction of the control unit 120. In the memory card 141, electronic data having a predetermined format are stored. The user can store electronic data downloaded from the service providing apparatus 300 in the memory card 141.

The display unit 150 has a display such as a known LCD. The display unit 150 displays predetermined information such as a menu item selection screen (to be described below), according to an instruction form the control unit 120.

The print unit 160 prints images according to an instruction of the control unit 120.

The scanner unit 170 reads images recorded on a sheet set by a user. The scanner unit 170 reads images according to an instruction of the control unit 120.

The operation unit 180 includes a plurality of operation buttons operable by the user, and transmits signals based on the pushing operation of the user to the control unit 120. The user can input a desired instruction by operating the operation unit 180.

Next, a hardware configuration of the relay apparatus 200 will be described. The description of the present illustrative embodiment will be made on assumption that the relay apparatus 200 is a physically existing server. However, as described above, the relay apparatus 200 may be a virtual machine.

The relay apparatus 200 includes a communication unit 210, a control unit 220, and a storage unit 230.

The communication unit 210 performs communication with other devices connected to the network. As the communication unit 210, a known network card can be used.

The control unit 220 includes a CPU, and a ROM and RAM connected to the CPU (not shown). The CPU controls the operation of the relay apparatus 200 according to programs stored in the ROM and the storage unit 230. The RAM is a storage device for temporarily storing various data.

The storage unit 230 is a non-volatile storage device such as a hard disk drive. The storage unit 230 stores a plurality of software modules including a URL acquiring program for the service A and a URL acquiring program for the service B. Also, the storage unit 230 stores a relay program (not shown) for relaying communication between the multi-function device 100 and the service providing apparatus 300 in cooperation with the plurality of modules.

The URL acquiring program for the service A is for acquiring a thumbnail URL or electronic-data URL from the service providing apparatus 300A, using the API released by the service A. The thumbnail URL indicates a storage location of a thumbnail image which is displayed to enable the user to select electronic data to be downloaded.

The URL acquiring program for the service B is for acquiring a thumbnail URL or electronic-data URL from the service providing apparatus 300B, using the API released by the service B.

The user of the multi-function device 100 can designate a desired service of a plurality of electronic-data storing services. Then, the user of the multi-function device 100 can download desired electronic data in the designated service. Also, the user of the multi-function device 100 can select whether to print electronic data downloaded in the electronic-data storing service by the print unit 160 or to store the downloaded electronic data in the memory card 141 inserted in the multi-function device 100.

<Operation of Service Cooperation System 10>

Next, an example of the operation of the service cooperation system 10 will be described with reference to FIGS. 3 to 6. FIGS. 3 to 6 are sequence diagrams illustrating an example of the operation of the service cooperation system 10. In this example, a flow in a case where the user of the multi-function device 100 selects printing of electronic data downloaded in the electronic-data storing service will be described. In the following description, the electronic-data storing service is simply referred to as the service.

In the present illustrative embodiment, the number of thumbnail URLs and electronic-data identification information which can be downloaded from the service providing apparatus 300 at one time is limited to 50. The number of thumbnail URLs and electronic-data identification information which can be downloaded at one time is determined based on the processing capability of the multi-function device 100 or the relay apparatus 200, for example, during designing. The service providing apparatus 300 manages a collection of a plurality of electronic data in units of albums. For example, in the present illustrative embodiment, each album includes 130 electronic data. When the user operates the operation unit 180 of the multi-function device 100 so as to select an album including electronic data to be downloaded and a service corresponding to the album from a list of albums (album1, album2, and album3) in a data selection screen U001 (see FIG. 3) displayed on the display unit 150, the multi-function device 100 transmits a data selection screen request to the relay apparatus 200 in step D001. The data selection screen request includes service identification information for identifying the service selected by the user, and user identification information for identifying the user.

Then, in step D002, the relay apparatus 200 issues a request of acquiring a total number of electronic data included in the album, to the service providing apparatus 300. Subsequently, in step D003, the service providing apparatus 300 notifies the total number of electronic data included in the album to the relay apparatus 200. The relay apparatus 200 handles the electronic data in units of pages, each of which includes up to 50 electronic data corresponding to the number of identification information of thumbnail URLs and electronic-data identification information which can be downloaded at one time. When acquiring the total number of electronic data of the album, the relay apparatus 200 determines pages for the electronic data of the album, in step D004. In the present illustrative embodiment, since the album of the service providing apparatus 300 includes 130 electronic data, the control unit 220 of the relay apparatus 200 determines the first page for the 1st to 50th electronic data, the second page for the 51st to 100th electronic data, and the third page for the 101st to 130th electronic data. Next, in step D005, the relay apparatus 200 requests electronic data information (an electronic data ID, an electronic data title, and a thumbnail URL) regarding to each of the electronic data corresponding to a page according to a request of the multi-function device 100.

In step D005, the relay apparatus 200 can identify the service and the user based on the service identification information and the user identification information included in the data selection screen request received from the multi-function device 100. Then, the relay apparatus 200 generates an electronic data information request corresponding to the service and the user, and transmits the electronic data information request to the service providing apparatus 300. At this time, the relay apparatus 200 generates the electronic data information request according to a program based on the service designated by the user.

Specifically, when the user has designated the service A, the relay apparatus 200 generates an electronic data information request corresponding to the service A according to the URL acquiring program for the service A stored in the storage unit 230, and transmits the electronic data information request to the service providing apparatus 300A. The generated electronic data information request is an HTTP message using the API released by the service A. Each service has a unique API for acquiring thumbnail URLs and data identification information. For this reason, the relay apparatus 200 includes programs for generating electronic data information requests according to the individual services. Specifically, the relay apparatus 200 includes the URL acquiring program for the service A for generating an electronic data information request for the service A, and the URL acquiring program for the service B for generating an electronic-data-information request for the service B. The relay apparatus 200 uses those programs to generate an electronic data information request corresponding to each service.

A type of search information stored in the generated electronic data information request depends on each service. For example, in order to search for a list of downloadable electronic data, the service provider side may need information, such as an album ID of an album, for designating the storage location of the electronic data. In this case, information, such as an album ID of an album which the user wants, for designating the storage location of the electronic data is stored as search information in the electronic data information request. Also, in order to search for the list of downloadable electronic data, the service provider side may need information, such as a folder name, for designating the storage location of the electronic data. In this case, information, such as a folder name which the user wants, for designating the storage location of the electronic data is stored as the search information in the electronic data information request.

Additional information other than the search information may be stored in the electronic data information request. For example, when the service provider side requires authentication information on the user for authenticating the user, the authentication information may be stored.

The search information and the additional information such as the authentication information are stored in the storage unit 230 in advance. The relay apparatus 200 uses necessary additional information to generate the electronic data information request according to each service.

In the above description, it has been described that the additional information necessary for the electronic data information request is stored in the relay apparatus 200 is advance. However, the present invention is not limited thereto. For example, before each time an electronic data information request is generated, the relay apparatus 200 may inquire of the multi-function device 100 about necessary additional information. When receiving the inquiry about additional information, the multi-function device 100 displays a screen for inquiring about additional information on the display unit 150 so as to enable the user to input or select additional information. Therefore, the user can designate an album ID of a desire album or a desire folder name. Then, the multi-function device 100 transmits the additional information input or selected by the user, to the relay apparatus 200. In this way, the relay apparatus 200 can designate the necessary additional information. In this case, the relay apparatus 200 generates an inquiring screen corresponding to each service in a markup language such as XML. This is because the type of additional information which the user should input or select depends on each service. The relay apparatus 200 transmits a message of the inquiring screen written in the markup language such as the XML to the multi-function device 100. The multi-function device 100 can execute rendering based on the received message so as to display the inquiring screen corresponding to the service designated by the service. If the multi-function device has at least a rendering driver of the markup language such as the XML, the multi-function device 100 can display an inquiring screen according to each service. Therefore, the user can designate an album or folder from which the user wants to download a thumbnail image, according to each service.

Next, in step D006, the service providing apparatus 300 transmits a thumbnail URL and an electronic data identification information to the relay apparatus 200 in response to the request of the relay apparatus 200. When there is a plurality of electronic data corresponding to the received electronic data information request, the service providing apparatus 300 transmits a plurality of thumbnail URLs and a plurality of electronic data information corresponding to the plurality of electronic data to the relay apparatus 200.

When receiving the thumbnail URLs and the electronic data information from the service providing apparatus 300, the relay apparatus 200 generates an XML text of a data selection screen to be displayed in the multi-function device 100 in step D007. The data selection screen is a screen for enabling the user to select an electronic data to be downloaded, in the multi-function device 100. In the data selection screen, thumbnail images of a plurality of electronic data are arranged. In the present illustrative embodiment, for example, it is assumed that 4 thumbnail images can be simultaneously displayed on the display unit 150. When the user selects a thumbnail image of a desired electronic data from the displayed thumbnail images, the electronic data corresponding to the selected thumbnail image is downloaded. The generated XML text includes 50 thumbnail URLs and electronic data identification information received from the service providing apparatus 300. In the XML text, it is defined in advance to transmit an electronic data URL acquisition request, including an electronic data identification information corresponding to a thumbnail image, to the relay apparatus 200 when the user selects the thumbnail image.

In step D008, the relay apparatus 200 transmits a message (electronic data selection screen display request) including the XML text of the data selection screen generated in step D007 to the multi-function device 100. When receiving the XML text of the data selection screen, the multi-function device 100 executes rendering according to the XML text. At this time, in step D009, the multi-function device 100 transmits a thumbnail image request to the service providing apparatus 300 based on the thumbnail URLs included in the XML text. The thumbnail image request is specifically an HTTP message using a GET method. The thumbnail image request includes the thumbnail URLs acquired from the relay apparatus 200. A server performing communication based on HTTP should support the general GET method. Therefore, although the multi-function device 100 does not have programs for generating electronic data information requests according to the individual services, which the relay apparatus 200 has, the multi-function device 100 can download thumbnail images in each service by using the GET method which is generally used to download data. The multi-function device 100 transmits a thumbnail image request to the service providing apparatus 300 for every four thumbnail images to be displayed on the display unit 150.

When receiving the thumbnail image request, in step D010, the service providing apparatus 300 transmits thumbnail images stored in the storage locations indicated by the URLs included in the received thumbnail images screen request, to the multi-function device 100.

When receiving the thumbnail images from the service providing apparatus 300, the multi-function device 100 displays a data selection screen U002 on the display unit 150. In the data selection screen U002, the thumbnail images received from the service providing apparatus 300 are arranged. Therefore, the user can look for a desired electronic data while browsing the thumbnail images.

After displaying the data selection screen U002 (see FIG. 3), the multi-function device 100 receives a selection of an electronic data from the user. The data selection screen U002 has functions as the display unit 150 and the operation unit 180. The data selection screen U002 includes a ‘Previous 50 Images’ key B01, a ‘Next 50 Images’ key B02, a ‘Previous Display Screen’ key B03, a ‘Next Display Screen’ key B04, and an ‘OK’ key B05. In the data selection screen U002, four thumbnail images are displayed. When the user touches the ‘Previous 50 Images’ key B01, the multi-function device 100 requests thumbnail URLs corresponding to a page just before a page including the thumbnail images displayed in the current data selection screen, from the service providing apparatus 300 through the relay apparatus 200. When the user touches the ‘Next 50 Images’ key B02, the multi-function device 100 requests thumbnail URLs corresponding to a page just after the page including the thumbnail images displayed in the current data selection screen, from the service providing apparatus 300 through the relay apparatus 200. When the user touches the ‘Previous Display Screen’ key B03, the multi-function device 100 changes the thumbnail images displayed in the current data selection screen to four previous thumbnail images. When the user touches the ‘Next Display Screen’ key B04, the multi-function device 100 changes the thumbnail images displayed in the current data selection screen to four next thumbnail images. After the user selects an electronic data regarding a thumbnail image, the ‘OK’ key B05 is used to determine the selection contents.

In the data selection screen U002, thumbnail images of a ring, a tree, an exclamation mark, and an equal mark are displayed. When the user touches the ‘Previous Display Screen’ key B03 or the ‘Next Display Screen’ key B04, in step D011, the multi-function device 100 transmits a thumbnail image request for acquiring four new thumbnail images different from the thumbnail images which are being displayed. Then, when receiving the new thumbnail images in step D012, the multi-function device 100 displays the new thumbnail images on the display unit 150 (that is, the data selection screen U002 is changed to a data selection screen U201 (see FIG. 4) having the new thumbnail images displayed therein). The user can select a desired electronic data from the displayed new thumbnail images by touching a thumbnail image corresponding to the desired electronic data in the operation unit 180. The data selection screen U201 displays thumbnail images of a triangle, a wheelchair, a question mark, and a knife and fork, and shows that electronic data regarding the thumbnail images of the wheelchair and the knife and fork has been selected by the user.

When the user touches the ‘Previous 50 Images’ key B01 or the ‘Next 50 Images’ key B02 of the operation unit 180, information representing the contents of the touched key, the page which is being displayed, and the electronic data selected in the multi-function device 100 as selection information are notified to the relay apparatus 200 in step D201. In the illustrative embodiment, the electronic data regarding the thumbnail images of the wheelchair and the knife and fork are designated by the selection information. In step D201, it is assumed that the page which is being displayed on the display unit 150 is the first page, and the ‘Next 50 Images’ key B02 has been touched by the user.

When receiving information representing that the first page is being displayed and the ‘Next 50 Images’ key B02 has been touched, in step D202, the relay apparatus 200 transmits a request for acquiring electronic data information regarding electronic data registered in the second page of the album. When receiving the request for acquiring the electronic data information from the relay apparatus 200, in step D203, the service providing apparatus 300 transmits the electronic data information regarding the electronic data registered in the second page of the album, to the relay apparatus 200. Then, in step D204, the relay apparatus 200 excludes information which does not correspond to electronic data of the second page of the album, from the selection information notified in step D201, and registers the excluded information as succeeding information. The multi-function device 100 determines that a thumbnail image which is included in succeeding information is in a selected state, and a thumbnail image which is not included in the succeeding information is in an unselected state. In step S204, the relay apparatus 200 also generates an XML text of a data selection screen corresponding to the second page of the album.

Next, in step D205, the relay apparatus 200 transmits a message including the succeeding information registered in step D204, and the XML text of the data selection screen, to the multi-function device 100. In step D2051, the multi-function device 100 transmits a thumbnail image request to the service providing apparatus 300 based on the thumbnail URLs included in the received XML text. When receiving the thumbnail image request, in step D2052, the service providing apparatus 300 transmits the thumbnail images to the multi-function device 100. When receiving the thumbnail images corresponding to the second page of the album, the multi-function device 100 displays the thumbnail images corresponding to the second page of the album in a data selection screen U202 on the display unit 150.

The data selection screen U202 shows thumbnail images representing a train, a no-smoking mark, a bicycle, and a person from the left (it is determined from the data selection screen U202 that all of the thumbnail images are in the unselected state). It is assumed that the user operates the operation unit 180 so as to select the no-smoking mark, and touches the ‘Previous 50 Images’ key B01 (see U203). In this case, in step D206, the multi-function device 100 notifies information representing that the second page of the album is being displayed, information representing that the ‘Previous 50 Images’ key has been touched, selection information indicating an electronic data regarding the no-smoking mark, and the succeeding information indicating the electronic data regarding the wheelchair and the knife and fork, to the relay apparatus 200. Next, in step D207, the relay apparatus 200 transmits a request for acquiring electronic data information regarding the electronic data of the first page, which is a page just before the second page that is being displayed, of the album, to the service providing apparatus 300. Then, in step S208, the service providing apparatus 300 transmits the electronic data information regarding the electronic data of the first page of the album, to the relay apparatus 200. In step D209 (see FIG. 5), the relay apparatus 200 excludes information corresponding to electronic data not included in the first page of the album, from the selection information notified in step D206, and registers the excluded information as the succeeding information. Also, in step D209, the relay apparatus 200 generates an XML text of a data selection screen corresponding to the first page of the album.

In step D210, the relay apparatus 200 transmits a message including the selection information and the succeeding information updated in step D209 and the XML text of the data selection screen, to the multi-function device 100. Then, in step D211, the multi-function device 100 transmits a thumbnail image request to the service providing apparatus 300 based on the thumbnail URLs included in the received XML text. When receiving the thumbnail image request, in step D212, the service providing apparatus 300 transmits thumbnail images to the multi-function device 100. When receiving the thumbnail images corresponding to the first page of the album, the multi-function device 100 displays the thumbnail images in a data selection screen U204 on the display unit 150.

The data selection screen U204 shows the thumbnail images of the triangle, the wheelchair, the question mark, and the knife and fork (it is determined from the data selection screen U204 that the wheelchair and the knife and fork are in the selected state). When the user operates the operation unit 180 so as to deselect the selected wheelchair and select the triangle, and touches the ‘OK’ key B05 so as to determine the selection (see a data selection screen U205), in response to this user's operation, in step D213, the multi-function device 100 transmits an image data selection completion notification, selection information indicating the electronic data regarding the triangle and the knife and fork, and succeeding information indicating the no-smoking mark, to the relay apparatus 200. Then, in step D214, the relay apparatus 200 adds selection information to the succeeding information. Next, in step D215 of FIG. 6, the relay apparatus 200 transmits a request for acquiring URLs for downloading the electronic data regarding the thumbnail images included in the succeeding information, to the service providing apparatus 300. In step D216, the service providing apparatus 300 transmits information including the URLs for downloading the selected electronic data, to the relay apparatus 200. Next, in step D217, the multi-function device 100 generates an XML text necessary for downloading the electronic data from the service providing apparatus 300 based on the received information, and transmits the XML text to the multi-function device 100.

Then, the display unit 150 displays a text for starting download and printing of the electronic data (see a screen U206). When the user operates the operation unit 180 so as to instruct to start download and printing of the electronic data in step U207, the multi-function device 100 downloads the electronic data from the service providing apparatus 300 in steps D218 to D223. Then, the multi-function device 100 prints the downloaded electronic data using the print unit 160 in step D224.

<Main Process Executed by Multi-function Device>

A main process executed by the multi-function device 100 will be described with reference to FIG. 7. In order to start the main process, the user inputs process start instruction to the multi-function device 100. Specifically, when the multi-function device 100 is a touch panel model, the user touches an application start icon. The application start icon is displayed on the display unit 150 of the multi-function device 100 in a standby state. When the multi-function device 100 has no touch panel function (hereinafter, referred to as a non-touch-panel model), the user pushes an operation button included in the operation unit 180 and is associated with the start of the main process. When the main process starts, in step S400, the control unit 120 controls the communication unit 110 to transmit application start request information for instructing the start of the main process to the relay apparatus 200. The control unit 120 stands by until receiving instruction information which the relay apparatus 200 transmits in response to step S400 (No in step S402). The control unit 120 controls the communication unit 110 so as to receive the instruction information. When receiving the instruction information (Yes in step S402), the control unit 120 determines an instruction type of the received instruction information in step S404. The received instruction information is stored in the RAM or the like included in the control unit 120.

When the instruction type included in the instruction information stored in the RAM is a function operation instruction (function operation instruction in step S404), in step S406, the control unit 120 controls at least one of the print unit 160, the scanner unit 170, the memory card controller 140, and the communication unit 110 to operate so as to execute a function corresponding to an operation type included in the function operation instruction according to a parameter which is set information. An example of the function operation instruction is a print start request (step D217). After step S404, the control unit 120 returns to the process of step S402.

In the meantime, when the instruction type included in the instruction information stored in the RAM is a list display instruction (list display instruction in step S404), the control unit 120 initializes an index to be described below, in step S408, and executes a screen information generating process in step S410. An example of the list display instruction is an electronic data selection screen request (steps D008, D205, and D210). In the screen information generating process, thumbnail URLs, which are notified as the instruction information by the relay apparatus 200 and are stored in the RAM, are referred to. The thumbnail URLs are stored in order, for example, as arrangement contents. The above-mentioned index is a value indicating an arrangement number of a stored thumbnail URL. A relation between the thumbnail URL and the index is shown in FIG. 10. In FIG. 10, the value of the index is 1, and indicates a corresponding first thumbnail URL of electric data. The screen information generating process executed in step S410 will be described below. After executing the screen information generating process of step S410, in step S412, the control unit 120 displays a predetermined screen on the display unit 150 in accordance with image information generated in step S410. In a case where the multi-function device 100 is a non-touch-panel model and can light hard keys included in the operation unit 180, if lighting of a hard key is instructed in the screen information, a backlight corresponding to the hard key is lit up. Since validated hard keys are shown brightly, it is possible to improve operability for the user.

After step S412, the control unit 120 determines whether any key has been operated in step S413. The control unit 120 stands by until any key is operated (No in step S413). When any key has been operated (Yes in step S413), in step S414, the control unit 120 determines whether the operated key is a screen switch operation key (for example, the ‘Previous Display Screen’ key B03 or the ‘Next Display Screen’ key B04). When the operated key is a screen switch operation key (Yes in step S414), the control unit 120 performs the screen information generating process of step S410. When the operated key is not a screen switch operation key (No in step S414), in step S416, the control unit 120 determines whether the operated key is a thumbnail selection operation key for selecting a thumbnail image (for example, a thumbnail image). When it is determined that the thumbnail selection operation key has been operated (Yes in step S416), the control unit 120 stores selection information representing which thumbnail image has been selected, in step S418, and proceeds to step S402 to wait for the instruction information. When it is not determined in step S416 that thumbnail selection operation has been performed (No in step S416), the control unit 120 stores a key type representing the type of the operated key in the RAM or the like. A key determined not to be a screen switch operation key and a thumbnail selection operation key is any one of the ‘OK’ key B05, the ‘Previous 50 Images’ key B01, and the ‘Next 50 Images’ key B02. In step S420, the control unit 120 generates the operation result information including the key type, the selection information, and the succeeding information. Then, in step S422, the control unit 120 controls the communication unit 110 to transmit the operation result information to the relay apparatus 200.

<Screen Information Generating Process>

The screen information generating process executed in step S410 of the main process shown in FIG. 7 will be described with reference to FIG. 8. First, in step S500, the control unit 120 determines whether operation for switch to the previous display screen (for example, touching of the ‘Previous Display Screen’ key B03) has been performed in step S413 of FIG. 7 by the user. When the operation for switch to the previous display screen has been performed in step S413 by the user (Yes in step S500), in step S502, the control unit 120 reduces (counts down) the index, which is a value indicating arrangement number of the stored thumbnail URL, by two pages. Then, the control unit 120 proceeds to step S504. When any operation for switch to the previous display image has not been performed (No in step S500), the control unit 120 proceeds to step S504.

In step S504, the control unit 120 reads a URL, indicated by the index, of the thumbnail URLs stored in the storage unit 130. Then, in step S506, the control unit 120 accesses the service providing server 300 using the read thumbnail URL through the network 400 (which corresponds to the thumbnail image request of step D011), and downloads a thumbnail image. In step S508, the control unit 120 generates image information for displaying the thumbnail image on the display unit 150, based on the template stored in the storage unit 130. The control unit 120 increases (counts up) the index in step S510. When a thumbnail URL indicated by the index does not exist (No in step S512), the screen information generating process ends. When a thumbnail URL corresponding to the index after the increase (count-up) exists (Yes in step S512), in step S514, the control unit 120 determines whether it is possible to additionally display the thumbnail image on the display unit 150, based on the template. When it is determined that it is possible to additionally display the thumbnail image (Yes in step S514), the control unit 120 proceeds to step S504. When it is determined that it is not possible to additionally display the thumbnail image (No in step S514), the screen information generating process ends. An operation regarding steps S504 to S516 will be described in detail with reference to FIG. 11 which illustrates an example of an image displayed on the display unit 150. In the present illustrative embodiment, for example, it is assumed that four thumbnail images can be simultaneously displayed on the display unit 150. A thumbnail image display section U300 includes a first thumbnail display part U301, a second thumbnail display part U302, a third thumbnail display part U303, and a fourth thumbnail display part U304. When downloading a thumbnail image from the service providing server 300, the control unit 120 of the multi-function device 100 displays the thumbnail image at the first thumbnail display part U301. Then, when downloading the next thumbnail image, the control unit 120 displays the thumbnail image at the second thumbnail display part U302. In this way, the control unit 120 controls the display unit 150 to display thumbnail images until thumbnail images are displayed at all of the first to fourth thumbnail display parts U301 to U304 (No in step S514) or there is no thumbnail image to be downloaded.

<Operation of Relay Apparatus 200>

Next, a detailed operation of the relay apparatus 200 will be described with reference to FIG. 9. When the relay program stored in the storage unit 230 runs, the control unit 220 of the relay apparatus 200 starts a relay apparatus process shown in FIG. 9 in accordance with various programs stored in the storage unit 230.

When the relay apparatus process starts, first, the control unit 220 stands by until receiving any information from the multi-function device 100 (No in step S700). When receiving any information from the multi-function device 100 (Yes in step S700), the control unit 220 determines the type of the received information in step S702. When the received information is the application start request information (application start request information in step S702), the relay apparatus 200 requests fifty thumbnail URLs from the first thumbnail URL for the thumbnail images stored in order the service providing server 300, to the service providing server 300 (which corresponds to request for acquiring electronic data information of step D005) and receives the thumbnail URLs in step S704. Then, the relay apparatus process proceeds to step S712 to be described below. When it is determined in step S702 that the received information is the operation result information (operation result information in step S702), in step S706, the relay apparatus 200 determines the key type notified as an operation result from the multi-function device 100. When the notified key type represents the ‘Previous 50 Images’ key (Previous 50 Images' key in step S706), the relay apparatus 200 receives thumbnail URLs and electronic data identification information regarding electronic data of a page just before the current album page displayed in the multi-function device 100 from the service providing server 300 (which corresponds to step D207). Then, the relay apparatus process proceeds to step S712 to be described below. When the notified key type represents the ‘Next 50 Images’ key (‘Next 50 Images’ key in step S706), the relay apparatus 200 receives thumbnail URLs and electronic data identification information regarding electronic data of a page just after the current album page displayed in the multi-function device 100 from the service providing server 300 (which corresponds to step D202). Then, the relay apparatus 200 generates instruction information for issuing a list display instruction including the received thumbnail URLs in step S712 (which corresponds to steps D007, D204, and D209). Next, the relay apparatus 200 transmits the generated instruction information to the multi-function device 100 in step S714, and ends the process.

When it is determined in step S706 by the control unit 220 that the key type input in the multi-function device 100 represents the ‘OK’ key (‘OK’ key in step S706), in step S716, the selection information and the succeeding information are stored in the storage unit 230 as determined information. Then, the relay apparatus 200 requests URLs of electronic data, regarding the thumbnail images represented by the selection information, from the service providing server 300 (which corresponds to the download URL acquisition request of step D215). Then, in step S718, the relay apparatus 200 receives the URLs transmitted from the service providing server 300. Next, in step S720, the relay apparatus 200 generates the instruction information of the function operation instruction including the received URLs. Here, the function operation instruction may be an electronic data printing start request to the multi-function device 100. Next, the relay apparatus 200 transmits the instruction information to the multi-function device 100 (which corresponds to the printing start request of step D217), and ends the process.

MODIFIED EXAMPLE

A modified example of the processes shown in FIGS. 8 and 9 will be described with reference to FIG. 12. In the modified example, the ‘Previous 50 Images’ key B01 and the ‘Next 50 Images’ key B02 are omitted. Also, one page is configured by 48 electronic data, not 50 electronic data. A key determined in step S416 as not being a display screen switch operation key nor a thumbnail selection operation key is only the ‘OK’ key B05.

In a case of No in step S502 or S500, it is determined whether a thumbnail URL corresponding to the index exists, in step S903. When a thumbnail URL corresponding to the index does not exist (No in step S903), a ‘Previous 48 Images’ key is stored as the key type in the RAM, and the process proceeds to step S420 (FIG. 7). When a thumbnail URL corresponding to the index exists (Yes in step S903), the process proceeds to step S504. When it is determined in step S512 that a thumbnail URL corresponding to the index does not exist (No in step S512), the ‘Next 48 Images’ key is stored as the key type in the RAM, and the process proceeds to step S420. When a thumbnail URL corresponding to the index after the increase (count-up) exists (Yes in step S512), the process proceeds to step S514.

That is, in the modified example, the control unit 120 determines whether a thumbnail URL corresponding to the index after the increase (count-up) or the reduction (count-down) exists, according to display screen switch operation of the user. Then, when thumbnail URL corresponding to the index after the increase (count-up) or the reduction (count-down) does not exist, the ‘Previous 48 Images’ key or the ‘Next 48 Images’ key is stored as the key type. Then, the control unit 120 notifies the stored key type of the relay apparatus 200, and acquires the thumbnail URLs corresponding to the ‘Previous 48 Images’ key or the ‘Next 48 Images’ key. These operations make it possible to perform a page switch operation without requiring the ‘Previous 50 Images’ key B01 and the ‘Next 50 Images’ key B02.

As described above, according to the service cooperation system 10, it is possible to print electric files downloaded in a desired service, and since electronic data does not pass through the relay apparatus 200, it is possible to suppress the operational cost of the relay apparatus 200.

According to the service cooperation system 10, it is possible to implement new services cooperating with the electronic-data storing service without a problem in which loads of the multi-function device 100, the electronic-data storing service, and the network between them occurs due to the process requiring download information whenever electronic data is output. Further, the business operator providing the service cooperation system 10 to the users can maintain cooperation with other services only by updating the programs, using the APIs, of the relay apparatus 200, if necessary.

While the present invention has been shown and described with reference to certain illustrative embodiments thereof, it will be understood by those skilled in the art that various changes in form and details may be made therein without departing from the spirit and scope of the invention as defined by the appended claims.

In the above-mentioned illustrative embodiment, the description has been made by using a URL as an address of a thumbnail image to be downloaded or an address of electronic data. However, the present invention is not limited thereto.

In the above-mentioned illustrative embodiment, in the relay apparatus process, the control unit 220 of the relay apparatus 200 generates the XML text of the data selection screen, and transmits the XML text of the data selection screen in step S714. However, the present invention is not limited thereto. For example, the relay apparatus 200 may transmit the entire electronic data identification information and thumbnail URLs received in each service to the multi-function device 100. In this case, the multi-function device 100 may generate a data selection screen based on the received electronic data identification information and thumbnail URLs in accordance to a predetermined program prepared by the manufacturer.

In the above-mentioned illustrative embodiment, in steps S704, S708, and S710 of the relay apparatus process, the relay apparatus 200 acquires the thumbnail URLs; however, the present invention is not limited thereto. For example, the relay apparatus 200 may acquire the data name of electronic data in place of the thumbnail URLs, and the multi-function device 100 may display the data name instead of the thumbnail URLs.

In the above-mentioned illustrative embodiment, the number of thumbnail URLs and electronic data identification information which can be downloaded at one time from the service providing apparatus 300 to the relay apparatus 200 is set to 50 such that the multi-function device 100 and the relay apparatus 200 can fully process the thumbnail URLs and the electronic data identification information. Here, according to the specifications of the service, the amount of thumbnail URLs and electronic data identification information which can be transmitted at one time from the service providing apparatus 300 to the relay apparatus 200 may be limited. The amount of thumbnail URLs and electronic data identification information may be the number of thumbnail URLs and electronic data identification information, or the total data size of the thumbnail URLs and electronic data identification information, or the like. In this case, the amount of thumbnail URLs and electronic data identification information which the relay apparatus 200 can download from the service providing apparatus 300 at one time may be determined according to the specification of the service providing apparatus 300.

In the above-mentioned illustrative embodiment, the service regarding the service providing apparatus 300 manages data in units of albums. Here, in a case of a service such as Flickr (registered trademark) capable of registering electronic data in a form in which the electronic data do not belong to albums, in the data selection screen U001, it is possible to select an electronic data which does not belong to any album. In a case where an electronic data which does not belong to any album is selected, the multi-function device 100 requests information on the electronic data which does not belong to any album, through the relay apparatus 200.

In the above-mentioned illustrative embodiment, as information indicating a selected thumbnail image, two types of information, that is, the selection information and the succeeding information are used. However, only the succeeding information may be used, that is, electronic data regarding thumbnail images selected as the succeeding information may be registered in step S418.

The control unit 120 may be configured to generate print information for printing 4 thumbnails using thumbnail images (step S410) and to make the print unit 160 execute printing using the print information in steps S410 and S412. The control unit 120 may be configured to acquire a URL for downloading electronic data, not a thumbnail image, in step S402 (that is, the relay apparatus 200 may receive a URL for downloading electronic data, not a thumbnail image, from the service providing server 300 in steps S704, S708, and S710, and transmit the URL to the multi-function device 100 in step S714), generate print information for printing 4 electronic data using the electronic data (step S410), and to make the print unit 160 execute printing using the print information (this case becomes an illustrative embodiment in which electronic data of an album is printed without displaying thumbnail images in the multi-function device 100). 

What is claimed is:
 1. A communication system comprising: a print apparatus configured to communicate with a plurality of servers, storing a plurality of albums each including a plurality of pieces of image data, at least one of the plurality of albums including N2 pieces of image data, the print apparatus comprising: a display configured to display N5 pieces of thumbnail images concurrently; and a touch panel configured to receive an input operation; and a relay apparatus configured to communicate with the plurality of servers and a plurality of print apparatuses including the print apparatus, wherein N2 is larger than N1, N1 is larger than N5, N1 is a number of URLs which the relay apparatus acquires from at least one of the plurality of servers and corresponds to a number of pieces of image data included in a page of a selected album from among the plurality of albums, the URLs relate to the album including the N2 pieces of image data, and the image data is subject to printing by the print apparatus; wherein the relay apparatus comprises: a first processor; and first memory storing computer readable instructions, when executed by the first processor, causing the relay apparatus to execute: receiving a first request which identifies one of the plurality of albums from the print apparatus; receiving number information indicative of a number of the image data of the album identified by the first request, the identified album including N2 pieces of the image data, and the N2 pieces of image data being identified by URLs, requesting, to at least one of the plurality of servers, N1 pieces of a first URLs which respectively identify thumbnail data of N1 pieces of the image data included in a first page out of a plurality of pages into which the identified album is divided, wherein the N2 pieces of image data in the identified album are stored in at least one of the plurality of servers, arrangement numbers are respectively assigned to the N2 pieces of image data in the identified album, the N1 pieces of the image data in the first page includes the N1 pieces of the image data from the image data arranged in a first position according to the arrangement numbers to the image data arranged in N1th position according to the arrangement numbers; acquiring the N1 pieces of the first URLs transmitted from at least one of the plurality of servers after the first URL is requested without requiring the relay apparatus to acquire the N1 pieces of the image data; and transmitting the acquired N1 pieces of the first URLs to the print apparatus, wherein the print apparatus comprises: a second processor; and second memory storing computer readable instructions, when executed by the second processor, causing the print apparatus to execute: receiving a first input operation through the touch panel; transmitting the first request to the relay apparatus in response to the first input operation; receiving the N1 pieces of the first URLs from the relay apparatus corresponding to the album identified by the first request after the first request is transmitted; transmitting, to at least one of the plurality of servers, a first thumbnail image request including N5 pieces of the received first URLs out of the N1 pieces of the received first URLs without accessing the relay apparatus; downloading, from the at least one of the plurality of servers, the N5 pieces of thumbnail data corresponding to the N5 pieces of the received first URLs included in the first thumbnail image request in response to the first thumbnail image request without accessing the relay apparatus; displaying, on the display, a next page key and only N5 pieces of thumbnail images of the thumbnail data downloaded in response to the first thumbnail image request, wherein the thumbnail images are displayed in an order of the arrangement numbers from the thumbnail data of the first image data to the N5th image data according to the arrangement numbers, wherein in a state the next page key and the N5 pieces of thumbnail images are displayed on the display, the print apparatus is configured to receive a second input operation corresponding to a touch to the next page key, a third input operation corresponding to a touch for selecting one of the N5 pieces of thumbnail images, and a fourth input operation different from the second and third input operations; in a state that the N5 pieces of the thumbnail images and the next page key are displayed, when the touch panel receives the second input operation, transmitting a second request indicative of a next page of the page corresponding to the thumbnail images displayed on the display; when the touch panel receives the third input operation, transmitting a third request indicative of the thumbnail selected by the touch of the third input to the relay apparatus; and when the touch panel receives the fourth input operation, transmitting, to at least one of the plurality of servers, a second thumbnail image request including N5 pieces of the received first URLs corresponding to a next of the last arrangement number of the arrangement numbers corresponding to the thumbnail images being displayed on the display out of the N1 pieces of the first URLs without accessing the relay apparatus; downloading, from the at least one of the plurality of servers, the N5 pieces of thumbnail data corresponding to the N5 pieces of the received first URLs included in the second thumbnail image request in response to the second thumbnail image request without accessing the relay apparatus; displaying, on the display, the next page key and only the N5 pieces of the thumbnail images of the thumbnail data downloaded from the at least one of the plurality of servers, wherein the print apparatus is configured to receive the second input operation, the third input operation and the fourth input operation through the touch panel in a state that the thumbnail image and the next page key are being displayed, wherein the instructions stored in the first memory cause the relay apparatus to execute: after the N1 pieces of the first URLs acquired from at least one of the plurality of servers are transmitted to the print apparatus, when the relay apparatus receives the second request from the print apparatus, requesting to at least one of the plurality of servers the N1 pieces of the first URLs which respectively indicate the thumbnail data of the N1 pieces of the image data included in the page which is indicated by the second request and is a different one of the plurality of pages into which the identified album is divided; acquiring the N1 pieces of the first URLs transmitted from the at least one of the plurality of servers after requesting the N1 pieces of the first URLs which respectively indicate the thumbnail data of the N1 pieces of the image data included in the page indicated by the second request without requiring the relay apparatus to acquire the N1 pieces of the image data included in the page indicated by the second request; transmitting the acquired N1 pieces of the first URLs to the print apparatus; when the relay apparatus receives the third request from the print apparatus, requesting to at least one of the plurality of servers a second URL indicating image data corresponding to the thumbnail data indicated by the third request, wherein the instructions stored in the second memory causes the print apparatus to execute: receiving, from the relay apparatus, the first URLs which respectively indicate the thumbnail data of the N1 pieces of the image data included in the second request after the second request is transmitted to at least one of the plurality of servers; displaying, on the display, the next page key and only the N5 pieces of thumbnail images out of the N1 pieces of thumbnail images represented by the N1 pieces of thumbnail data which can be downloaded from at least one of the plurality of servers using the N1 pieces of received first URLs corresponding to the page indicated by the second request, wherein the thumbnail images are displayed in the order of the arrangement numbers from the thumbnail data of the first image data to the N5th image data according to the arrangement numbers, wherein the print apparatus is configured to receive the second input operation, the third input operation and the fourth input operation in a state that the thumbnail images and the next page key are displayed on the display; receiving the second URL indicative of the image data corresponding to the thumbnail data indicated by the third request transmitted from the relay apparatus after the third request is transmitted to at least one of the plurality of servers; downloading the image data from at least one of the plurality of servers using the second URL indicative of the image data corresponding to the thumbnail data indicated by the received third request; and executing a print process of printing an image based on the downloaded image data.
 2. The communication system according to claim 1, wherein the instructions stored in the second memory causes the print apparatus to execute displaying the N5 pieces of thumbnail images, the next page key and a next screen key on the display, in a state that the thumbnail image, the next page key and the next screen key are displayed on the display, the print apparatus is configured to receive the second input operation, the third input operation and the fourth input operation through the touch panel, and the fourth input operation is made by touching the next screen key.
 3. The communication system according to claim 1, wherein the plurality of servers include a first server and a second server, the relay apparatus is configured to communicate through the Internet with the print apparatus, the first server and the second server, the instructions stored in the first memory includes first instructions for acquiring the first URL and the second URL from the first server through the Internet, and second instructions for acquiring the first URL and the second URL from the second server through the Internet, the instructions stored in the first memory causes the relay apparatus to execute: when the relay apparatus receives the first request from the print apparatus, acquiring the first URL from the first server using the first instruction when the first request is related to the album stored in the first server; and acquiring the first URL from the second server using the second instruction when the first request is related to the album stored in the second server, when the relay apparatus receives the second request from the print apparatus, acquiring the first URL from the first server using the first instruction when the second request is related to the album stored in the first server; and acquiring the first URL from the second server using the second instruction when the second request is related to the album stored in the second server, and when the relay apparatus receives the third request from the print apparatus, acquiring the second URL from the first server using the first instruction when the third request is related to the album stored in the first server; and acquiring the second URL from the second server using the second instruction when the third request is related to the album stored in the second server.
 4. The communication system according to claim 1, wherein the instructions stored in the second memory causes the print apparatus to execute: allowing the print apparatus to receive a fifth input operation and a sixth input operation in a state that the N5 pieces of thumbnail images, the next page key and a previous page key are displayed on the display, the fifth input operation corresponding to a touch to the previous page key, and the sixth input operation being different from the second to fifth input operations, in a state the N5 pieces of thumbnail images, the next page key and the previous page key are displayed on the display, when the print apparatus receives the fifth input operation through the display, transmitting, to the relay apparatus, a second request indicative of a page previous to a page corresponding to the thumbnail images displayed on the display; and when the print apparatus receives the sixth input operation through the display, displaying, on the display, the next page key, the previous page key and only N5 pieces of thumbnail images out of the N1 pieces of thumbnail images represented by the N1 pieces of thumbnail data which can be downloaded from at least one of the plurality of servers using the N1 pieces of received first URLs, wherein the thumbnail images are displayed in an order of the arrangement numbers from the thumbnail data of the first image data to the N5th image data according to the arrangement numbers out of the arrangement numbers corresponding to the thumbnail images displayed on the display, wherein in a state the next page key, the previous page key and the N5 pieces of thumbnail images are displayed on the display, the print apparatus is configured to receive the second input operation, the third input operation, the fourth input operation, the fifth input operation and the sixth input operation.
 5. The communication system according to claim 4, wherein the instructions stored in the first memory causes the relay apparatus to execute: when the second request received from the print apparatus is indicative of a last page out of the plurality of pages into which the identified album is divided, requesting to at least one of the plurality of servers N4 pieces of the first URLs respectively indicative of the thumbnail data of the N4 pieces of image data included in a page indicated by the second request, wherein the N4 is a number according to a calculation formula of the form N4=N2−(N3−1)*N1; acquiring the N4 pieces of the first URLs transmitted from at least one of the plurality of servers after the relay apparatus requests the N4 pieces of the first URLs respectively indicative of the thumbnail data of the N4 pieces of image data included in the page indicated by the second request; and transmitting the acquired N4 pieces of the first URLs to the print apparatus, and the instructions stored in the second memory causes the print apparatus to execute: when after the second request is transmitted to at least one of the plurality of servers, the print apparatus receives the N4 pieces of the first URLs respectively indicative of the thumbnail data of the N4 pieces of the image data included in the last page out of the plurality of pages into which the album is divided, displaying, on the display, the next page key, the previous page key and only N5 pieces of thumbnail images out of the N1 pieces of thumbnail images represented by the N1 pieces of thumbnail data which can be downloaded from at least one of the plurality of servers using the N1 pieces of received first URLs, wherein the thumbnail images are displayed in an order of the arrangement numbers from the thumbnail data of the first image data to the N5th image data according to the arrangement numbers out of the arrangement numbers corresponding to the thumbnail images displayed on the display, wherein in a state the next page key, the previous page key and the N5 pieces of thumbnail images are displayed on the display, the print apparatus is configured to receive the second input operation, the third input operation, the fourth input operation, the fifth input operation and the sixth input operation.
 6. The communication system according to claim 1, wherein an address of the URL does not represent a location inside the relay apparatus.
 7. The communication system according to claim 1, wherein, during downloading of the N5 pieces of thumbnail data corresponding to the N5 pieces of the received first URLs, only the N5 pieces of thumbnail data are downloaded of the N1 pieces of thumbnail data that can be downloaded from the at least one of the plurality of servers.
 8. A print apparatus configured to communicate with a relay apparatus and a plurality of servers storing a plurality of albums each including a plurality of pieces of image data, at least one of the plurality of albums including N2 pieces of image data wherein N2 is larger than N1 which corresponds to a number of pieces of image data included in a page of a selected album from among the plurality of albums, the print apparatus comprising: a display configured to display N5 pieces of thumbnail images, N1 is larger than N5, N1 is a number of URLs which the relay apparatus acquires from at least one of the plurality of servers, the URLs relate to the album including the N2 pieces of image data, and the image data is subject to printing by the print apparatus; and a touch panel configured to receive an input operation; and a processor; and memory storing computer readable instructions, when executed by the second processor, causing the print apparatus to execute: receiving a first input operation through the touch panel; transmitting the first request to the relay apparatus in response to the first input, the first request identifying one of the plurality of albums from the print apparatus; receiving N1 pieces of first URLs corresponding to the album identified by the first request from the relay apparatus after the first request is transmitted, wherein the N1 pieces of first URLs respectively identify thumbnail data of N1 pieces of the image data included in a first page out of a plurality of pages into which the identified album is divided, the N2 pieces of image data in the identified album are stored in at least one of the plurality of servers, arrangement numbers are respectively assigned to the N2 pieces of image data in the identified album, the N1 pieces of the image data in the first page includes the N1 pieces of the image data from the image data arranged in a first position according to the arrangement numbers to the image data arranged in N1th position according to the arrangement numbers; transmitting, to at least one of the plurality of servers, a first thumbnail image request including N5 pieces of the received first URLs out of the N1 pieces of the received first URLs without accessing the relay apparatus; downloading, from the at least one of the plurality of servers, the N5 pieces of thumbnail data corresponding to the N5 pieces of the received first URLs included in the first thumbnail image request in response to the first thumbnail image request without accessing the relay apparatus; displaying, on the display, a next page key and only N5 pieces of thumbnail images of the thumbnail data downloaded in response to the first thumbnail image request without receiving the N1 pieces of thumbnail data from the relay apparatus, wherein the thumbnail images are displayed in an order of the arrangement numbers from the thumbnail data of the first image data to the N5th image data according to the arrangement numbers, wherein in a state the next page key and the N5 pieces of thumbnail images are displayed on the display, the print apparatus is configured to receive a second input operation corresponding to a touch to the next page key, a third input corresponding to a touch for selecting one of the N5 pieces of thumbnail images, and a fourth input operation different from the second and third input operations; in a state that the N5 pieces of the thumbnail images and the next page key are displayed, when the touch panel receives the second input operation, transmitting a second request indicative of a next page of the page corresponding to the thumbnail images displayed on the display; when the touch panel receives the third input operation, transmitting a third request indicative of the thumbnail selected by the touch of the third input to the relay apparatus; and when the touch panel receives the fourth input operation, transmitting, to at least one of the plurality of servers, a second thumbnail image request including N5 pieces of the received first URLs corresponding to a next of the last arrangement number of the arrangement numbers corresponding to the thumbnail images being displayed on the display out of the N1 pieces of the first URLs without accessing the relay apparatus; downloading, from the at least one of the plurality of servers, the N5 pieces of thumbnail data corresponding to the N5 pieces of the received first URLs included in the second thumbnail image request in response to the second thumbnail image request without accessing the relay apparatus; displaying, on the display, the next page key and only the N5 pieces of the thumbnail images including the thumbnail image using the thumbnail data corresponding to next of the last arrangement number of the arrangement numbers corresponding to the thumbnail images being displayed on the display among the N1 pieces of thumbnail data which can be downloaded from at least one of the plurality of servers using the received N1 pieces of the first URLs without receiving the N1 pieces of thumbnail data from the relay apparatus, wherein the print apparatus is configured to receive the second input, the third input and the fourth input through the touch panel in a state that the thumbnail image and the next page key are being displayed, wherein the instructions stored in the second memory causes the print apparatus to execute: receiving, from the relay apparatus, the first URLs which respectively indicate the thumbnail data of the N1 pieces of the image data included in the second request after the second request is transmitted to at least one of the plurality of servers; displaying, on the display, the next page key and only the N5 pieces of thumbnail images out of the N1 pieces of thumbnail images represented by the N1 pieces of thumbnail data which can be downloaded from at least one of the plurality of servers using the N1 pieces of received first URLs corresponding to the page indicated by the second request without receiving the N1 pieces of thumbnail data from the relay apparatus, wherein the thumbnail images are displayed in the order of the arrangement numbers from the thumbnail data of the first image data to the N5th image data according to the arrangement numbers, wherein the print apparatus is configured to receive the second input, the third input and the fourth input in a state that the thumbnail images and the next page key are displayed on the display; receiving the second URL indicative of the image data corresponding to the thumbnail data indicated by the third request transmitted from the relay apparatus after the third request is transmitted to at least one of the plurality of servers; downloading the image data from at least one of the plurality of servers using the second URL indicative of the image data corresponding to the thumbnail data indicated by the received third request without receiving the image data from the relay apparatus; and executing a print process of printing an image based on the downloaded image data.
 9. The print apparatus according to claim 8, wherein the instructions stored in the second memory causes the print apparatus to execute displaying the N5 pieces of thumbnail images, the next page key and a next screen key on the display, in a state that the thumbnail image, the next page key and the next screen key are displayed on the display, the print apparatus is configured to receive the second input, the third input and the fourth input through the touch panel, and the fourth input is made by touching the next screen key.
 10. The print apparatus according to claim 8, wherein the instructions stored in the second memory causes the print apparatus to execute: allowing the print apparatus to receive a fifth input and a sixth input in a state that the N5 pieces of thumbnail images, the next page key and a previous page key are displayed on the display, the fifth input corresponding to a touch to the previous page key, and the sixth input being different from the second to fifth inputs, in a state the N5 pieces of thumbnail images, the next page key and the previous page key are displayed on the display, when the print apparatus receives the fifth input through the display, transmitting, to the relay apparatus, a second request indicative of a page previous to a page corresponding to the thumbnail images displayed on the display; and when the print apparatus receives the sixth input through the display, displaying, on the display, the next page key, the previous page key and only N5 pieces of thumbnail images out of the N1 pieces of thumbnail images represented by the N1 pieces of thumbnail data which can be downloaded from at least one of the plurality of servers using the N1 pieces of received first URLs, wherein the thumbnail images are displayed in an order of the arrangement numbers from the thumbnail data of the first image data to the N5th image data according to the arrangement numbers out of the arrangement numbers corresponding to the thumbnail images displayed on the display, wherein in a state the next page key, the previous page key and the N5 pieces of thumbnail images are displayed on the display, the print apparatus is configured to receive the second input, the third input, the fourth input, the fifth input and the sixth input. 